package model;

import interfejsy.IWsp;
import interfejsy.logika.Operacje;
import interfejsy.logika.logika_wlasciwa.Wlasciciel;

import java.util.HashMap;
import java.util.Map;

import org.json.JSONException;
import org.json.JSONObject;

public class Pokoj extends RRR implements Comparable<Pokoj> {
	 public final static String key="1";
     Wyposarzenie wyposarzenie;
     
     /**
      * W-wolny
      * RZ-zaliczka
      * R-zajety
      */
     String status;
     
     public boolean aktualizuj(Pokoj p)
     {
             this.status=p.getStatus();
             this.CENA_ZA_DOBE=p.getCENA_ZA_DOBE();
             this.ZALICZKA_ZA_DOBE=p.getZALICZKA_ZA_DOBE();
             System.out.println("Pokoj "+this.nazwa+" zaktualizowano");
             
             //wyslij aktualne info o pokoju
             IWsp iwsp=new Operacje();
             //aktualizuj pokoj
             Map<String,Object> mapa=new HashMap<String,Object>();
             iwsp.operacja(mapa);
             while(iwsp.status()!=-1){}
             System.out.println("Pokoj "+this.nazwa+" zaktualizowano baze mysql");
             return true;
     }
     public String getStatus() {
             return status;
     }

     public void setStatus(String status/*,Object o*/) {
             //if(o instanceof Wlasciciel)
                     this.status = status;
             /*else
                     throw NiePrawidloweUprawnienia();*/
     }

     public String get_id_obiektu() {
             return _id_obiektu;
     }

     public void set_id_obiektu(String _id_obiektu) {
             this._id_obiektu = _id_obiektu;
     }

/*      private Map<String,String> elementy()
     {
             return RRRelementy(_elementy, elementy);
     }*/
     double
             CENA_ZA_DOBE=10.00,
             ZALICZKA_ZA_DOBE=CENA_ZA_DOBE%0.10;
     
     public Wyposarzenie getWyposarzenie() {
             return wyposarzenie;
     }
     public void setWyposarzenie(Wyposarzenie wyposarzenie) {
             this.wyposarzenie = wyposarzenie;
     }
     public double getCENA_ZA_DOBE() {
             return CENA_ZA_DOBE;
     }
     public void setCENA_ZA_DOBE(double cENA_ZA_DOBE) {
             CENA_ZA_DOBE = cENA_ZA_DOBE;
     }
     public double getZALICZKA_ZA_DOBE() {
             return ZALICZKA_ZA_DOBE;
     }
     public void setZALICZKA_ZA_DOBE(double zALICZKA_ZA_DOBE) {
             ZALICZKA_ZA_DOBE = zALICZKA_ZA_DOBE;
     }
     public Pokoj(){
             
     }
     public   String ta(){
             return "obiekty";
     }
     public Map<String,String> toString_()
     {
             c.put("key",key);
             c.put("URL", "POKOJ");
             c.put("z", "POKOJ");
             c.put("ID_KLIENTA", _id_obiektu);
             c.put("KLIENT", _id_obiektu);   c.put("STATUS", status);
             id();
             
             //c.putAll(elementy());
             return c;
     }
     protected void id()
     {
             c.put("TABELA",POLATABEL.POKOJ_TABELA);
             c.put("POLA",POLATABEL.POKOJ_POLA);
     }
     @Override
     public String toString()
     {
             /*Map<String,String> c=new HashMap<String,String>();
             c.put("OBIEKT", "POKOJ");
             c.put("_id_obiektu", _id_obiektu);
             c.putAll(elementy());*/
             return /*_id_obiektu+"-"+*/nazwa/*+"\n"*/;
     }
     public Pokoj(String ciag,String h){
             this._id_obiektu=ciag;
             this.nazwa=h;
             /*c.getString("nazwa"),
             c.getString("wystroj"),
             c.getString("id"),
             c.getString("cenaweekend"),
             c.getString("cenatydzien"*/
     }
     public Pokoj(JSONObject c)
     {
             try 
             {
                     this._id=c.getString("ID");
                     this.nazwa=c.getString("NAZWA");
             } 
             catch (JSONException e) 
             {
                     e.printStackTrace();
             }
             
     }
     
     public Pokoj(String ciag){
             String[] d=ciag.split(",");
             boolean c=false;int a=0;
             for (int i = 0; i < d.length; i++) {
                     d[i]=d[i].replace("\"", "");
                     String[] y=d[i].split(":");
                     if(d[i].equals("ID_OBIEKTU"))
                             _id_obiektu= y[1];
                     if(d[i].equals("KLIENT"))
                             _id= y[1];
                     //mm.put(y[0], (y[1].equals("0"))?true:false);
             }
     }

     @Override
     public int compareTo(Pokoj another) {
              return this._id.compareTo(another._id);
     }
}
